.loading-mask { position: absolute; z-index: 10000; background-color: hsla(0, 0%, 100%, .9); margin: 0; top: 0; right: 0; bottom: 0; left: 0; transition: opacity .3s }
.loading-spinner { top: 50%; margin-top: -21px; width: 100%; text-align: center; position: absolute;
 .loading-text { color: #20a0ff; margin: 3px 0; font-size: 14px; }
 .circular { width: 42px; height: 42px; animation: loading-rotate 2s linear infinite; }
 .path { animation: loading-dash 1.5s ease-in-out infinite; stroke-dasharray: 90, 150; stroke-dashoffset: 0; stroke-width: 2; stroke: #20a0ff; stroke-linecap: round; }
}
.loading-fade-enter, .loading-fade-leave-active { opacity: 0 }

@keyframes loading-rotate {
	to { transform: rotate(1turn) }
}
@keyframes loading-dash {
	0% { stroke-dasharray: 1, 200; stroke-dashoffset: 0 }
	50% { stroke-dasharray: 90, 150; stroke-dashoffset: -40px }
	to { stroke-dasharray: 90, 150; stroke-dashoffset: -120px }
}


// .spn_hol { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: hsla(0, 0%, 100%, .9); z-index: 10000; opacity: 1; transition: all 1s; }
// .spinner { position: absolute; top: 50%; margin-top: -20px; width: 100%; text-align: center; display: block; }
// .spinner > div { width: 18px; height: 18px; background-color: #20a0ff; border-radius: 100%; display: inline-block; animation: bouncedelay 1.4s infinite ease-in-out; -webkit-animation-fill-mode: both; animation-fill-mode: both; }
// .spinner .bounce1 { animation-delay: -0.32s; }
// .spinner .bounce2 { animation-delay: -0.16s; }
// @keyframes bouncedelay {
// 0%, 80%, 100% { transform: scale(0.0); }
// 40% { transform: scale(1.0); }
// }